
import {
    createSlice
} from '@reduxjs/toolkit'


//createSlice:接收一个初始状态和一个带有reducer名称和函数的查找表,并自动生成action creator函数,action类型字符串和一个reducer函数
const countSlice = createSlice({
    //action中type的命名空间 是type的前缀
    name:'counter',
    //定义初始值    reducer提供的初始值
    initialState:{
        count:0
    },
    reducers:{
        increment(a,b){
            console.log(a,b,'reducer中的参数打印');
        },
        decrement(a,b){
            console.log(a,b,'reducer中的参数打印');
        }

    }
})


//通过createSilce创建的对象上的一个reducer属性,直接得到就是当前的reducer函数,可以直接暴露出去给store使用
export default countSlice.reducer

//createSilce通过传递进来的配置内容把对应的action函数也创建出来,把所有的action保存在countSlice的action对象上
export const {
    increment,
    decrement
} = countSlice.actions